home *** CD-ROM | disk | FTP | other *** search
Text File | 1992-01-29 | 40.5 KB | 1,116 lines | [TEXT/MPS ] |
- ; Version: 3.28
- ; Created: Friday, October 20, 1989 at 10:02:20 PM
- ;
- ; File: ToolEqu.a
- ;
- ; Assembler Interface to the Macintosh Libraries
- ; Copyright Apple Computer, Inc. 1984-1991
- ; All Rights Reserved
- ;
- ;___________________________________________________________________________
-
- IF &TYPE('__IncludingToolEqu__') = 'UNDEFINED' THEN
- __IncludingToolEqu__ SET 1
-
- IF &TYPE('__IncludingTraps__') = 'UNDEFINED' THEN ; get defintion of _CommToolboxDispatch
- INCLUDE 'Traps.a'
- ENDIF
-
- IF (&TYPE('wholeTools') = 'UNDEFINED') THEN
- wholeTools EQU 1
- ENDIF
-
-
- ;+ Resource Manager
-
- ; Resource attributes
-
- resSysRef EQU 7 ; reference to system/local reference
- resSysHeap EQU 6 ; In system/in application heap
- resPurgeable EQU 5 ; Purgeable/not purgeable
- resLocked EQU 4 ; Locked/not locked
- resProtected EQU 3 ; Protected/not protected
- resPreload EQU 2 ; Read in at OpenResource?
- resChanged EQU 1 ; Existing resource changed since last update
- rcbMask EQU $FD ; Must preserve ResChanged over _ResAttrs
-
- ; Map attributes
-
- mapReadOnly EQU 7 ; is this file read-only?
- mapCompact EQU 6 ; Is a compact necessary?
- mapChanged EQU 5 ; Is it necessary to write map?
-
- ; Resource Manager Globals
-
- TopMapHndl EQU $A50 ; topmost map in list [handle]
- SysMapHndl EQU $A54 ; system map [handle]
- SysMap EQU $A58 ; reference number of system map [word]
- CurMap EQU $A5A ; reference number of current map [word]
- ResReadOnly EQU $A5C ; Read only flag [word]
- ResLoad EQU $A5E ; Auto-load feature [word]
- ResErr EQU $A60 ; Resource error code [word]
- ResErrProc EQU $AF2 ; Resource error procedure [pointer]
- SysResName EQU $AD8 ; Name of system resource file [STRING[19]]
-
- ;new Resource Manager stuff
-
- RomMapInsert EQU $B9E ; (byte) determines if we should link in map
- TmpResLoad EQU $B9F ; second byte is temporary ResLoad value.
-
- ; the following word values are to be placed into the
- ; word located at RomMapInsert
-
- MapTrue EQU $FFFF ; link in ROM map with resload true
- MapFalse EQU $FF00 ; link in ROM map with resload false
-
- ;+ Font Manager
-
-
- ; Standard font ID's
-
- sysFont EQU 0 ; system font ID
- applFont EQU 1 ; application font ID
- newYork EQU 2 ; standard release fonts
- geneva EQU 3
- monaco EQU 4
- venice EQU 5
- london EQU 6
- athens EQU 7
- sanFran EQU 8
- toronto EQU 9
- cairo EQU 11
- losAngeles EQU 12
- times EQU 20
- helvetica EQU 21
- courier EQU 22
- symbol EQU 23
- mobile EQU 24
-
- ; Font Manager Globals
-
- ApFontID EQU $984 ; resource ID of application font [word]
- FMDefaultSize EQU $987 ; default size [byte]
- CurFMInput EQU $988 ; quickdraw FMInput Record [pointer]
- FMgrOutRec EQU $998 ; quickdraw FontOutput Record [pointer]
- FScaleDisable EQU $A63 ; disable font scaling? [byte]
-
- ;new FONT manager stuff
-
- WidthListHand EQU $8E4 ; list of extra width tables, or nil.
- WidthPtr EQU $B10 ; (long) Font Mgr global
- WidthTabHandle EQU $B2A ; Font width table handle for measure
- LastSPExtra EQU $B4C ; (long) most recent value of space extra
- SysFontFam EQU $BA6 ; (word) System font family ID or zero
- SysFontSize EQU $BA8 ; (word) System font size (or zero for 12 pt)
- FDevDisable EQU $BB3 ; (byte) $FF to disable device-defined style extra
- LastFOND EQU $BC2 ; (long) handle of last font def record
- FONDID EQU $BC6 ; (word) ID of last font def record
- FractEnable EQU $BF4 ; (byte) flag for fractional font widths
- UsedFWidths EQU $BF5 ; (byte) flag saying if we used fract widths
- FScaleHFact EQU $BF6 ; (long) horz. font scale factor
- FScaleVFact EQU $BFA ; (long) vertical font scale factor
-
- ;+ Window Manager
-
- ; system windows have negative kinds
- dialogKind EQU 2 ; dialog windows
- userKind EQU 8 ; this and above numbers are for user
-
- ; Values returned by window definition function's hit routine
-
- wNoHit EQU 0 ; not in window at all
- wInContent EQU 1 ; in content area
- wInDrag EQU 2 ; in drag area
- wInGrow EQU 3 ; in grow area
- wInGoAway EQU 4 ; in go away area
- wInZoomIn EQU 5 ; in zoom in
- wInZoomOut EQU 6 ; in zoom out
-
- ; FindWindow Return Codes
-
- inDesk EQU 0 ; not in any window
- inMenuBar EQU 1 ; in the menu bar
- inSysWindow EQU 2 ; in a system window
- inContent EQU 3 ; in content area of user window
- inDrag EQU 4 ; in drag area of user window
- inGrow EQU 5 ; in grow area of user window
- inGoAway EQU 6 ; in go away area of user window
- inZoomIn EQU 7 ; in zoom in part code
- inZoomOut EQU 8 ; in zoom out part code
-
- ; Resource ID's for windows
-
- deskPatID EQU 16 ; desk pattern PAT ID
- documentProc EQU 0 ; standard document WDEF ID
- dBoxProc EQU 1 ; dialog box (document without titleBar) WDEF ID
- plainDBox EQU 2 ; no border WDEF ID
- altDBoxProc EQU 3 ; no shadow or title WDEF ID
- noGrowDocProc EQU 4 ; no grow area WDEF ID
- movableDBoxProc EQU 5 ; movable dialog box WDEF ID
- zoomDocProc EQU 8 ; with zoom box WDEF ID
- zoomNoGrow EQU 12 ; zoom with no grow box WDEF ID
- rDocProc EQU 16 ; document with rounded corners WDEF ID
-
- ; Window Data Structure Definition
-
- windowPort EQU 0 ; grafPort [108 bytes]
- windowKind EQU $6C ; type of window [word]
- wVisible EQU $6E ; visible flag [byte]
- wHilited EQU $6F ; select (hilite) flag [byte]
- wGoAway EQU $70 ; has go away button [byte]
- wZoom EQU $71 ; has zoom box [byte]
- structRgn EQU $72 ; structure region of window [Handle]
- contRgn EQU $76 ; content region of window [Handle]
- updateRgn EQU $7A ; update region of window [Handle]
- windowDef EQU $7E ; window definition procedure [Handle]
- wDataHandle EQU $82 ; window proc-defined data [Handle]
- wTitleHandle EQU $86 ; title string [Handle]
- wTitleWidth EQU $8A ; width in pixels of title string [word]
- wControlList EQU $8C ; control list of this window [handle]
- nextWindow EQU $90 ; next window in z-ordered list [pointer]
- windowPic EQU $94 ; picture handle for updates [handle]
- wRefCon EQU $98 ; application use [long]
- windowSize EQU $9C ; size of window data structure
- WStateData RECORD 0
- userState DS.L 2 ;Rect
- stdState DS.L 2 ;Rect
- ENDR
-
-
-
- ; Window Manager Globals
-
- WindowList EQU $9D6 ; Z-ordered linked list of windows [pointer]
- PaintWhite EQU $9DC ; erase newly drawn windows? [word]
- WMgrPort EQU $9DE ; window manager's grafport [pointer]
- GrayRgn EQU $9EE ; rounded gray desk region [handle]
- CurActivate EQU $A64 ; window slated for activate event [pointer]
- CurDeactive EQU $A68 ; window slated for deactivate event [pointer]
- DragHook EQU $9F6 ; user hook during dragging [pointer]
- DeskPattern EQU $A3C ; desk pattern [8 bytes]
- DeskHook EQU $A6C ; hook for painting the desk [pointer]
- GhostWindow EQU $A84 ; window hidden from FrontWindow [pointer]
-
-
-
- ;+ Menu Manager
-
- ; "ASCII" marks for menu characters
-
- noMark EQU 0
- commandMark EQU $11 ; command fan (cloverleaf)
- checkMark EQU $12 ; check mark for menus
- diamondMark EQU $13 ; diamond mark for menus
- appleMark EQU $14 ; desk ornament menu title
-
- ; MenuList Data Structure Definition -- one per menuBar
-
- ; 6 Byte header
- lastMenu EQU 0 ; number of bytes in this menuList [word]
- lastRight EQU 2 ; h coordinate of 1st free point in menuBar [word]
- ; one of the following per menu
- menuoH EQU 0 ; menu handle [handle]
- menuLeft EQU 4 ; coordinate of left edge of menu [word]
-
- ; MenuInfo Data Structure -- one per menu
-
- menuID EQU 0 ; unique ID for each menuBar [word]
- menuWidth EQU 2 ; menu width [word]
- menuHeight EQU 4 ; menu height [word]
- menuDefHandle EQU 6 ; menu definition proc [handle]
- menuEnable EQU $A ; enable flags, one bit/item [long]
- menuData EQU $E ; menu item string [STRING]
- menuBlkSize EQU $E ; size of a menu block plus dataString
-
- ; MenuString Data Structure -- one per menu item
-
- itemIcon EQU 0 ; icon byte
- itemCmd EQU 1 ; apple (command key) byte
- itemMark EQU 2 ; checkmark character byte
- itemStyle EQU 3 ; style byte
-
- ; Menu Manager Globals
-
- MenuList EQU $A1C ; current menuBar list structure [handle]
- MenuFlash EQU $A24 ; flash feedback count [word]
- MenuHook EQU $A30 ; user hook during menuSelect [pointer]
- MBarEnable EQU $A20 ; menuBar enable for desk accessories[word]
- MBarHook EQU $A2C ; user hook during menuSelect [pointer]
-
- ;new Menu Manager stuff
-
- MBarHeight EQU $BAA ; (word) height of menu bar (usually 20)
-
- ;+ Control Manager
-
- ; Part Codes
-
- inButton EQU 10 ; in a push button
- inCheckBox EQU 11 ; in a checkBox button
- inUpButton EQU 20 ; in up button area of a dial
- inDownButton EQU 21 ; in down button area of a dial
- inPageUp EQU 22 ; in page up (gray) area of a dial
- inPageDown EQU 23 ; in page down (gray) area of a dial
- inThumb EQU 129 ; in thumb area of a dial
-
- ; Constants for axis parameter of DragGrayRgn and DragControl
-
- noConstraint EQU 0 ; free form dragging
- hAxisOnly EQU 1 ; horizontally only
- vAxisOnly EQU 2 ; vertically only
-
- ; Resource ID's for controls
-
- pushButProc EQU 0 ; rounded-corner pushButtons CDEF ID
- checkBoxProc EQU 1 ; check-box type buttons CDEF ID
- radioButProc EQU 2 ; radio buttons CDEF ID
- scrollBarProc EQU 16 ; scrollBar CDEF ID
- useWFont EQU 8 ; add this to get window font CDEF ID
- sBarPatID EQU 17 ; scrollBar pattern ID
-
-
- ; Popup Control Constants
- popupMenuCDEFproc EQU 1008 ; popup menu CDEF ID
-
- ; Popup Variation Codes
- popupFixedWidth EQU $0001 ; size will not vary with menu items
- popupReserved EQU $0002 ; was popupUseCQD
- popupUseAddResMenu EQU $0004 ; menu = AddResMenu(CNTL's refCon)
- popupUseWFont EQU $0008 ; use this for window font/size/face
-
- ; Popup Title characteristics
- popupTitleBold EQU $00000100 ; styles for the popup title
- popupTitleItalic EQU $00000200
- popupTitleUnderline EQU $00000400
- popupTitleOutline EQU $00000800
- popupTitleShadow EQU $00001000
- popupTitleCondense EQU $00002000
- popupTitleExtend EQU $00004000
- popupTitleNoStyle EQU $00008000
-
- popupTitleLeftJust EQU $00000000 ; justification for the title
- popupTitleCenterJust EQU $00000001
- popupTitleRightJust EQU $000000FF
-
-
- ; Control Template
-
- nextControl EQU $0 ; next control in the list [handle]
- contrlOwner EQU $4 ; owning window [pointer]
- contrlRect EQU $8 ; bounding rectangle [8 bytes]
- contrlVis EQU $10 ; visible state [byte]
- contrlHilite EQU $11 ; hilite state [byte]
- contrlValue EQU $12 ; current value of control [word]
- contrlMin EQU $14 ; minimum value of control [word]
- contrlMax EQU $16 ; maximum value of control [word]
- contrlDefHandle EQU $18 ; control definition procedure [handle]
- contrlData EQU $1C ; data for definition proc [handle]
- contrlAction EQU $20 ; local actionProc [pointer]
- contrlRFcon EQU $24 ; refcon defined by application [long]
- contrlTitle EQU $28 ; title string [STRING]
- contrlSize EQU $28 ; size of control data structure less title
-
- ; Control Manager Globals
-
- DragPattern EQU $A34 ; DragTheRgn pattern [8 bytes]
- DragFlag EQU $A44 ; implicit parameter to DragControl [word]
- CurDragAction EQU $A46 ; implicit actionProc for dragControl [pointer]
-
-
- ;+ Text Edit
-
-
- ; Justification styles
-
- teJustLeft EQU 0 ; left justified text
- teJustRight EQU -1 ; right justified text
- teJustCenter EQU 1 ; center justified text
- teForceLeft EQU -2 ; for Arabic fonts, force left justification
-
- ; new names for the Justification styles
- teFlushDefault EQU 0 ; flush according to the line direction
- teCenter EQU 1 ; center justify
- teFlushRight EQU -1 ; flush right for all scripts
- teFlushLeft EQU -2 ; flush left for all scripts
-
- ; Text Edit Record
-
- teDestRect EQU $0 ; destination rectangle [8 bytes]
- teViewRect EQU $8 ; view rectangle rectangle [8 bytes]
- teSelRect EQU $10 ; select rectangle [8 bytes]
- teLineHite EQU $18 ; lineheight [word]
- teAscent EQU $1A ; first baseline offset [word]
- teSelPoint EQU $1C ; selection point [long]
- teSelStart EQU $20 ; selection start [word]
- teSelEnd EQU $22 ; selection end [word]
- teActive EQU $24 ; active [byte]
- teWordBreak EQU $26 ; word break routine [pointer]
- teClikProc EQU $2A ; click loop routine [pointer]
- teClikTime EQU $2E ; time of last click [long]
- teClikLoc EQU $32 ; location of double click [long]
- teCarTime EQU $34 ; time for next caret toggle [long]
- teCarOn EQU $38 ; is caret on? [byte]
- teCarAct EQU $39 ; is caret active? [byte]
- teJust EQU $3A ; fill style [word]
- teLength EQU $3C ; length of text below [word]
- teTextH EQU $3E ; text [handle]
- teRecBack EQU $42 ; unused [word]
- teRecLine EQU $44 ; unused [word]
- teLftClick EQU $46 ; click was to left? [byte]
- teLftCaret EQU $47 ; caret was to left? [byte]
- teCROnly EQU $48 ; <CR> only for line breaks? [byte]
- teFontStuff EQU $4A ; space for font specifier [8 bytes]
- teFont EQU $4A ; text font [word]
- teFace EQU $4C ; text face [word]
- teMode EQU $4E ; text mode [word]
- teSize EQU $50 ; text size [word]
- teGrafPort EQU $52 ; grafport for editting [pointer]
- teHiHook EQU $56 ; hook for hilite routine [pointer]
- teCarHook EQU $5A ; hook for hilite routine [pointer]
- teNLines EQU $5E ; number of lines [word]
- teLines EQU $60 ; line starts [words...]
- teRecSize EQU $68 ; base size of a record w/o lines
-
- ; Text Edit Globals
-
- TEDoText EQU $A70 ; textEdit doText proc hook [pointer]
- TERecal EQU $A74 ; textEdit recalText proc hook [pointer]
- TEScrpLength EQU $AB0 ; textEdit Scrap Length [word]
- TEScrpHandle EQU $AB4 ; textEdit Scrap [handle]
- TEWdBreak EQU $AF6 ; default word break routine [pointer]
- TEFindWord EQU $7F8 ; low-memory hook for TextEdit's FindWord routine
-
- ;new TE stuff
-
- WordRedraw EQU $BA5 ; (byte) - used by TextEdit RecalDraw
- TESysJust EQU $BAC ; (word) system justification (intl. textEdit)
- TEFlags EQU teRecBack ; turn whole byte into bit flags
- teFAutoPos EQU 6 ; set this bit for auto position/scroll
-
- ;+ Dialog Manager
-
- ; Item codes in item list
-
- userItem EQU 0 ; application-defined (dialog only)
- ctrlItem EQU 4 ; must be added to following four items
- btnCtrl EQU 0 ; standard button
- chkCtrl EQU 1 ; standard check box
- radCtrl EQU 2 ; standard radio button
- resCtrl EQU 3 ; control defined in resource file
- statText EQU 8 ; static text
- editText EQU 16 ; editable text (dialog only)
- iconItem EQU 32 ; icon
- picItem EQU 64 ; quickdraw picture
- itemDisable EQU 128 ; add to any of above to disable
-
-
- ; Generic buttons
-
- okButton EQU 1 ; OK button
- cancelButton EQU 2 ; Cancel button
-
- ; Alert/Dialog Resource ID's
-
- stopIcon EQU 0 ; stop icon ID
- noteIcon EQU 1 ; note icon ID
- cautionIcon EQU 2 ; caution icon ID
-
- ; Dialog Template
-
- dBounds EQU $0 ; dialog bounds rectangle
- dWindProc EQU $8 ; window proc ID
- dVisible EQU $A ; visible flag
- dGoAway EQU $C ; go away flag
- dRefCon EQU $E ; reference constant
- dItems EQU $12 ; item list ID and handle
- dTitle EQU $14 ; dialog window title
-
- ; Alert Template
-
- aBounds EQU $0 ; alert box height and width
- aItems EQU $8 ; item list ID
- aStages EQU $A ; stages word
-
- ; Dialog/Alert Window Record
-
- dWindow EQU $0 ; window record
- items EQU $9C ; Item list [handle]
- teHandle EQU $A0 ; textEdit object [handle]
- editField EQU $A4 ; current field being edited [word]
- editOpen EQU $A6 ; is editting open? [word]
- aDefItem EQU $A8 ; default item for alerts [word]
- dWindLen EQU $AA ; dialog record length
-
- ; In each item
-
- itmHndl EQU 0 ; handle to the item
- itmRect EQU $4 ; bounding rect of item
- itmType EQU $C ; item type
- itmData EQU $D ; item string, must be even length
-
- ; Dialog Manager Globals
-
- ANumber EQU $A98 ; active alert ID [word]
- ACount EQU $A9A ; # times this alert called [word]
- DABeeper EQU $A9C ; beep routine [pointer]
- DAStrings EQU $AA0 ; paramText substutution strings [4 handles]
- DlgFont EQU $AFA ; default dialog font ID [word]
-
-
- ;+ Package Globals
-
-
- AppPacks EQU $AB8 ; packages' code [8 handles]
-
-
- ;+ Finder related Globals
-
-
- FinderName EQU $2E0 ; "Finder" name [STRING[15]]
- AppParmHandle EQU $AEC ; handle to hold application parameters
-
-
- ;+ Miscellaneous Globals
-
-
- ApplScratch EQU $A78 ; application scratch area [12 Bytes]
- ToolScratch EQU $9CE ; scratch area [8 bytes]
- TempRect EQU $9FA ; scratch rectangle [8 bytes]
-
- ; System Patterns
-
- sysPatListID EQU 0 ; ID of PAT# which contains 38 patterns
-
- IF wholeTools THEN
-
- ; Resource Manager
-
- mCCMask EQU $60 ; mapCompact + mapChanged
- mChMask EQU $20 ; mapChanged
- mCoMask EQU $40 ; mapCompact
-
- ; Font Manager
-
- ; Font header values
-
- propFont EQU $9000 ; proportional font type
- prpFntH EQU $9001 ; with height table
- prpFntW EQU $9002 ; with width table
- prpFntHW EQU $9003 ; with height & width table
- fixedFont EQU $B000 ; fixed-pitch font type
- fxdFntH EQU $B001 ; with height table
- fxdFntW EQU $B002 ; with width table
- fxdFntHW EQU $B003 ; with height & width table
- fontWid EQU $ACB0 ; width-only font type
-
- ; control/status codes for linkage w/font manager
-
- fMgrCtl1 EQU 8 ; printer drivers
-
- ; Font Header Data Record
-
- fFontType EQU 0 ; font type [word]
- fFirstChar EQU 2 ; ASCII code of first char [word]
- fLastChar EQU 4 ; ASCII code of last char [word]
- fWidMax EQU 6 ; maximum width of any char in pixels [word]
- fKernMax EQU 8 ; Negative of maximum character kern [word]
- fNDescent EQU 10 ; negative of descent [word]
- fFRectWidth EQU 12 ; width of font rectangle [word]
- fFRectHeight EQU 14 ; height of font rectangle [word]
- fOWTLoc EQU 16 ; offset to offset/width table [word]
- fAscent EQU 18 ; ascent above baseline in pixels [word]
- fDescent EQU 20 ; descent below baseline in pixels [word]
- fLeading EQU 22 ; space between lines in pixels [word]
- fRowWords EQU 24 ; row width of bit image / 2 [word]
-
- ; Font Manager Input Record (CurFMInput)
-
- fmInFamily EQU 0 ; family [word]
- fmInSize EQU 2 ; size [word]
- fmInFace EQU 4 ; face [word]
- fmInNeedBits EQU 5 ; needBits [byte]
- fmInDevice EQU 6 ; device number [byte]
- fmInNumer EQU 8 ; numerator of scale [fixed]
- fmInDenom EQU 12 ; denominator of scale [fixed]
-
-
- ; Font Manager Output record (FMgrOutRec)
-
- fmOutError EQU 0 ; error code [word]
- fmOutFontH EQU 2 ; the actual font [handle]
- fmOutBold EQU 6 ; bolding factor [byte]
- fmOutItalic EQU 7 ; italic factor [byte]
- fmOutULOffset EQU 8 ; underline offset [byte]
- fmOutULShadow EQU 9 ; underline halo [byte]
- fmOutULThick EQU 10 ; underline thickness [byte]
- fmOutShadow EQU 11 ; shadow factor [byte]
- fmOutExtra EQU 12 ; extra horizontal width [byte]
- fmOutAscent EQU 13 ; height above baseline [byte]
- fmOutDescent EQU 14 ; height below baseline [byte]
- fmOutWidMax EQU 15 ; maximum width of character [byte]
- fmOutLeading EQU 16 ; space between lines [byte]
- fmOutNumer EQU 18 ; point for numerators of scale factor [long]
- fmOutDenom EQU 22 ; point for denominators of scale factor [long]
-
-
- ;WidthTable data structure
-
- widTabData EQU 0 ;ARRAY[1..256] OF LONGINT character widths
- widTabFont EQU 1024 ;Handle font record used to build table
- widthSExtra EQU 1028 ;LONGINT space extra used for table
- widthStyle EQU 1032 ;LONGINT extra due to style
- widthFID EQU 1036 ;INTEGER font family ID
- widthFSize EQU 1038 ;INTEGER font size request
- widthFace EQU 1040 ;INTEGER style (face) request
- widthDevice EQU 1042 ;INTEGER device requested
- widthVInScale EQU 1044 ;FIXED scale factors requested
- widthHInScale EQU 1048 ;FIXED scale factors requested
- widthAFID EQU 1052 ;INTEGER actual font family ID for table
- widthFHand EQU 1054 ;Handle family record used to build up table
- widthUsedFam EQU 1058 ;BOOLEAN used fixed point family widths
- widthAFace EQU 1059 ;BYTE actual face produced
- widthVOutput EQU 1060 ;INTEGER vertical scale output value
- widthHOutput EQU 1062 ;INTEGER horizontal scale output value
- widthVFactor EQU 1064 ;INTEGER vertical scale output value
- widthHFactor EQU 1066 ;INTEGER horizontal scale output value
- widthASize EQU 1068 ;INTEGER actual size of actual font used
- ;widTabSize EQU 1070 ;INTEGER total size of table
-
- ; Font Family Definition
-
- ffFlags EQU 0 ; flags for family (word)
- ffFamID EQU 2 ; family ID number (word)
- ffFirst EQU 4 ; ASCII code of first character (word)
- ffLast EQU 6 ; ASCII code of last character (word)
- ffAscent EQU 8 ; maximum ascent expressed for 1 pt (word)
- ffDescent EQU 10 ; maximum descent expressed for 1 pt (word)
- ffLeading EQU 12 ; maximum leading expressed for 1 pt (word)
- ffWidMax EQU 14 ; maximum widMax expressed for 1 pt (word)
- ffWTabOff EQU 16 ; offset to width table (long)
- ffKernOff EQU 20 ; offset to kerning table (long)
- ffStylOff EQU 24 ; offset to style mapping table (long)
- ffStyleOff EQU 24 ; offset to style mapping table (long)
- ffProperty EQU 28 ; style property info (12 words)
- ffIntl EQU 46 ; reserved for international use (2 words)
- ffVersion EQU 50 ; FOND version number
-
- ; Font Characterization Table
-
- dpiVert EQU 0 ; vertical dots per inch [word]
- dpiHoriz EQU 2 ; horizontal dots per inch [word]
- boldChr EQU 4 ; bold characteristics [3 bytes]
- italChr EQU 7 ; italic characteristics [3 bytes]
- ; unused [3 bytes]
- outlineChr EQU 13 ; outline characteristics [3 bytes]
- shadowChr EQU 16 ; shadow characteristics [3 bytes]
- condChr EQU 19 ; condensed characteristics [3 bytes]
- extendChr EQU 22 ; extended characteristics [3 bytes]
- underChr EQU 25 ; underline characteristics [3 bytes]
-
- ; Globals
-
- CurFMFamily EQU $988 ; current font family
- CurFMSize EQU $98A ; current font size
- CurFMFace EQU $98C ; current font face
- CurFMNeedBits EQU $98D ; boolean specifying whether it needs strike
- CurFMDevice EQU $98E ; current font device
- CurFMNumer EQU $990 ; current numerator of scale factor
- CurFMDenom EQU $994 ; current denominator of scale factor
- FOutRec EQU $998 ; Font Manager output record
- FMDotsPerInch EQU $9B2 ; h,v dotsPerInch of current device
- FMStyleTab EQU $9B6 ; style heuristic table supplied by device
- RomFont0 EQU $980 ; system font [handle]
- GotStrike EQU $986 ; Do we have the strike? [byte]
-
-
- ; Window Manager
-
- ; Window Definition Procedure Messages
-
- wDrawMsg EQU 0 ; draw yourself
- wHitMsg EQU 1 ; hit test
- wCalcRgnMsg EQU 2 ; recalculate your regions
- wInitMsg EQU 3 ; initialize yourself
- wDisposeMsg EQU 4 ; dispose any private data
- wGrowMsg EQU 5 ; drag out grow outline
- wGIconMsg EQU 6 ; draw the grow icon
- OldStructure EQU $9E6 ; saved structure region [handle]
- OldContent EQU $9EA ; saved content region [handle]
- SaveVisRgn EQU $9F2 ; temporarily saved visRegion [handle]
- CurDeKind EQU $A22 ; window kind of deactivated window [word]
- SaveUpdate EQU $9DA ; Enable update accumulation? [word]
-
- ; Menu Manager
-
- ; Menu Definition Procedure Messages
-
- mDrawMsg EQU 0 ; draw yourself
- mChooseMsg EQU 1 ; select an item
- mSizeMsg EQU 2 ; calculate your size
-
- ; Menu Resource IDs
-
- textMenuProc EQU 0 ; standard text menu MDEF ID
- TheMenu EQU $A26 ; ID of hilited menu [word]
- SavedHandle EQU $A28 ; saved bits under a menu [handle]
-
- ;misc Menu stuff
-
- MrMacHook EQU $A2C ; Mr. Macintosh hook [pointer]
-
- ; Control manager
-
- ; Control Definition Procedure Messages
-
- drawCtlMsg EQU 0 ; draw message
- hitCtlMsg EQU 1 ; hit test message
- calcCtlMsg EQU 2 ; calc region message
- newCtlMsg EQU 3 ; init message
- dispCtlMsg EQU 4 ; dispose any private data message
- posCtlMsg EQU 5 ; adjust indicator position message
- thumbCtlMsg EQU 6 ; calculate rectangles for thumb dragging
- dragCtlMsg EQU 7 ; custom drag message
- trackCtlMsg EQU 8 ; track yourself message
- calcWholeCtlMsg EQU 10 ; calc whole region message
- calcThumbCtlMsg EQU 11 ; calc indicator region message
-
- ;stage definition--packed 2 to a byte, 4 stages in a word
-
- volBits EQU 3 ; number of beeps
- alBit EQU 4 ; alert bit (put up box this time?)
- okDismissal EQU 8 ; bit for OK/Cancel default in each stage
-
- ; DialogList Data Structure Definitions
-
- dlgMaxIndex EQU 0 ; maximum index (=items-1) stored here
-
-
- SaveProc EQU $A90 ; address of Save failsafe procedure
- SaveSP EQU $A94 ; Safe SP for restart or save
-
- ; DITLMethod
- overlayDITL EQU 0
- appendDITLRight EQU 1
- appendDITLBottom EQU 2
-
- ; Dialog Selectors
- AppendDITL EQU $402
- CountDITL EQU $403
- ShortenDITL EQU $404
-
- ; Package Manager
-
- FPState EQU $A4A ; floating point state [6 bytes]
- App2Packs EQU $BC8 ; $BC8-$BE7 eight more package handles
-
- ; Resource Manager
-
- RMGRPerm EQU $BA4 ; (byte) - permission byte for OpenResFile
-
- ; Miscellaneous Constants
-
- screenRadius EQU $00100010 ; rounded corners for desk area
-
- ; Miscellaneous Globals
-
- IconBitmap EQU $A0E ; bitmap used for plotting things
- TaskLock EQU $A62 ; re-entering SystemTask [byte]
- CloseOrnHook EQU $A88 ; hook for closing desk ornaments
-
- ;new MacApp stuff
-
- MAErrProc EQU $BE8 ; (long) MacApp error proc address
- MASuperTab EQU $BEC ; (long) handle to MacApp superclass table
-
-
- ;**************** NEW TOOL EQUATES ************
-
- ; Font Manager
-
- ; addition to FMgrOutRec (was unused)
-
- fmOutCurStyle EQU 17 ;style algorthmically applied by QuickDraw
-
- ;___________________________________________________________________________
- ;
- ; Window Manager
-
- ; auxWinRec structure
-
- awNext EQU $0 ;next in chain [Handle]
- awOwner EQU $4 ;owner ID [WindowPtr]
- awCTable EQU $8 ;color table [CTabHandle]
- dialogCItem EQU $C ;handle to dialog manager structures [handle]
- awFlags EQU $10 ;handle for Ernie [handle]
- awResrv EQU $14 ;for expansion [longint]
- awRefCon EQU $18 ;user constant [longint]
- auxWinSize EQU $1C ;size of record
- AuxWinHead EQU $0CD0 ;[handle] Window Aux List head
-
- ; Window Part Identifiers which correlate color table entries with window elements
-
- wContentColor EQU 0
- wFrameColor EQU 1
- wTextColor EQU 2
- wHiliteColor EQU 3
- wTitleBarColor EQU 4
-
-
- ;___________________________________________________________________________
- ;
- ; Control Manager
-
- ; auxCtlRec structure
-
- acNext EQU $0 ;next in chain [AuxCtlHndl]
- acOwner EQU $4 ;owner ID [ControlHandle]
- acCTable EQU $8 ;color table [CCTabHandle]
- acFlags EQU $C ;misc flag byte [word]
- acReserved EQU $E ;for expansion [LONGINT]
- acRefCon EQU $12 ;user constant [LONGINT]
- acSize EQU $16 ;size of record
- AuxCtlHead EQU $0CD4 ;[handle] Control Aux List head
-
- ; Here are some equates for the colors of control parts
-
- cFrameColor EQU 0
- cBodyColor EQU 1
- cTextColor EQU 2
- cThumbColor EQU 3
-
- ;___________________________________________________________________________
- ;
- ; Menu Manager
-
- MenuDisable EQU $0B54 ; menuID and Item when disabled item selected
- MBDFHndl EQU $0B58 ; handle to current menu bar defproc
- MBSaveLoc EQU $0B5C ; handle to the mbarproc private data
- MenuCInfo EQU $0D50 ; hanel to menu color information table
- TopMenuItem EQU $A0A ; pixel value of top of scrollable menu
- AtMenuBottom EQU $A0C ; pixel value of bottom of scrollable menu
-
- ;
- ; color menu table equates (mct = menu color table)
- ;
- mctID EQU $0
- mctItem EQU $2
- mctRGB1 EQU $4
- mctRGB2 EQU $A
- mctRGB3 EQU $10
- mctRGB4 EQU $16
- mctReserved EQU $1C
- mctEntrySize EQU $1E
-
- ;
- ; miscellaneous equates for hierarchical menus
- ;
-
- hMenuCmd EQU $1B ; itemCmd == $1B ==> hierarchical menu for this item
- scriptMenuCmd EQU 28 ; itemCmd == $1C ==> item to be displayed in script font
- hierMenu EQU -1 ; InsertMenu(handle, hierMenu), when beforeID ==
- ; hierMenu, the handle is inserted in the
- ; hierarchical menuList
- mPopUpMsg EQU 3 ; menu defProc messages - place yourself
- ; miscellaneous hierarchical equates
- ;
- hMenuMark EQU 200 ; 'ยป' = menu character indicates item with hierarchical menu
-
- ;
- ; miscellaneous menubar equates
- ;
- mbMenu1Loc EQU $A ; first menu is 10 pixels from left side of screen
- mctAllIds EQU -97 ; search for all IDs for the given Item
-
- ;
- ; color menu table search (and destroy) messages (mct = menu color table)
- ;
- mctAllItems EQU -98 ; search for all Items for the given ID
- mctLastIDIndic EQU -99 ; last entry in color table has this in ID field
-
- ;___________________________________________________________________________
- ;
- ; Text Edit
-
- ; Set/Replace style modes
-
- fontBit EQU 0 ; set font
- faceBit EQU 1 ; set face
- sizeBit EQU 2 ; set size
- clrBit EQU 3 ; set color
- addSizeBit EQU 4 ; add size mode
- toglBit EQU 5 ;set faces in toggle mode
- ; TESetStyle/TEContinuousStyle modes
- doFont EQU $01
- doFace EQU 2
- doSize EQU 4
- doColor EQU 8
- doAll EQU 15 ; set font/face/size/color
- addSize EQU 16
- doToggle EQU 32
- ; New internal dispatch table
- ; --offsets into TEDispatchRec
- EOLHook EQU 0 ; [ProcPtr] TEEOLHook
- DRAWHook EQU 4 ; [ProcPtr] TEWidthHook
- WIDTHHook EQU 8 ; [ProcPtr] TEDrawHook
- HITTESTHook EQU 12 ; [ProcPtr] TEHitTestHook
- nWIDTHHook EQU 24 ; [ProcPtr] nTEWidthHook <6>
- TextWidthHook EQU 28 ; [ProcPtr] TETextWidthHook <13>
- ; --selectors for TECustomHook
- IntEOLHook EQU 0
- IntDrawHook EQU 1
- IntWidthHook EQU 2
- IntHitTestHook EQU 3
- IntNWidthHook EQU 6 ; new version of WidthHook <6>
- IntTextWidthHook EQU 7 ; new TextWidthHook <13>
- teDispatchH EQU teRecBack ; new handle to internal dispatch record
- ; handle to style record
-
- teStylesH EQU $4A ; replaces teFont/teFace
-
- ; offsets into TEStyleRec
-
- nRuns EQU $0 ; [INTEGER] # of entries in styleStarts array
- nStyles EQU $2 ; [INTEGER] # of distinct styles
- styleTab EQU $4 ; [STHandle] handle to distinct styles
- lhTab EQU $8 ; [LHHandle] handle to line heights
- teRefCon EQU $C ; [LONGINT] reserved
- nullStyle EQU $10 ; [NullStHandle] to style set at null selection
- runs EQU $14 ; array of styles
-
- ; offsets into NullStRec
-
- teReserved EQU 0 ; [LONGINT] reserved for future expansion
- nullScrap EQU 4 ; [StScrpHandle] handle to scrap style table.
- nullStSize EQU 8
-
- ; offsets into StyleRun array
-
- startChar EQU 0 ; [INTEGER] offset into text to start of style
- styleIndex EQU 2 ; [INTEGER] style index
- stStartSize EQU 4 ; size of a styleStarts entry
-
- ; offsets into STElement
-
- stCount EQU 0 ; [INTEGER] # of times this style is used
- stHeight EQU 2 ; [INTEGER] line height
- stAscent EQU 4 ; [INTEGER] ascent
- stFont EQU 6 ; [INTEGER] font
- stFace EQU 8 ; [Style] face
- stSize EQU 10 ; [INTEGER] size
- stColor EQU 12 ; [RGBColor] color
- stRecSize EQU 18 ; size of a teStylesRec
-
- ; offsets into TextStyle
-
- tsFont EQU 0 ; [INTEGER] font
- tsFace EQU 2 ; [Style] face
- tsSize EQU 4 ; [INTEGER] size
- tsColor EQU 6 ; [RGBColor] color
- styleSize EQU 12 ; size of a StylRec
-
- ; offsets into StScrpRec
-
- scrpNStyles EQU 0 ; [INTEGER] # of styles in scrap
- scrpStyleTab EQU 2 ; [ScrpSTTable] start of scrap styles array
-
- ; offsets into scrpSTElement
-
- scrpStartChar EQU 0 ; [LONGINT] char where this style starts
- scrpHeight EQU 4 ; [INTEGER] line height
- scrpAscent EQU 6 ; [INTEGER] ascent
- scrpFont EQU 8 ; [INTEGER] font
- scrpFace EQU 10 ; [Style] face
- scrpSize EQU 12 ; [INTEGER] size
- scrpColor EQU 14 ; [RGBColor] color
- scrpRecSize EQU 20 ; size of a scrap record
-
- teFAutoScr EQU 0 ; (00000001b)
- ; feature definitions for TEFeatureFlag
- teFTextBuffering EQU 1 ; (00000010b)
- teFOutlineHilite EQU 2 ; (00000100b)
- teFInlineInput EQU 3 ; (00001000b)
- teFUseTextServices EQU 4 ; (00010000b)
-
- ; action for the new "bit (un)set" interface, TEFeatureFlag
- TEBitClear EQU 0
- TEBitSet EQU 1 ; set the selector bit.
- TEBitTest EQU -1 ; no change; just return the present value
-
- ; constants for identifying the routine that called FindWord <5>
- teWordSelect EQU 4 ; clickExpand to select word
- teWordDrag EQU 8 ; clickExpand to drag new word
- teFromFind EQU 12 ; FindLine called it ($0C)
- teFromRecal EQU 16 ; RecalLines called it ($10)
-
- ; Text Edit Selectors:
-
- teStylPaste EQU 0
- teStylePaste EQU 0
- teSetStyle EQU 1
- teReplaceStyle EQU 2
- teGetStyle EQU 3
- getStylHandle EQU 4
- getStyleHandle EQU 4
- setStylHandle EQU 5
- setStyleHandle EQU 5
- getStylScrap EQU 6
- getStyleScrap EQU 6
- teStylInsert EQU 7
- teStyleInsert EQU 7
- teGetPoint EQU 8
- teGetHeight EQU 9
-
- teContinuousStyle EQU 10
- setStyleScrap EQU 11
- teCustomHook EQU 12
- teNumStyles EQU 13
- teFeatureFlag EQU 14 ; new for System 6.0.5/Script Systems 6.0.4 <1.5>
-
- MACRO
- _TEContinuousStyle
- MOVE.W #teContinuousStyle,-(SP)
- DC.W $A83D ; _TEDispatch
- ENDM
-
- MACRO
- _SetStyleScrap
- MOVE.W #setStyleScrap,-(SP)
- DC.W $A83D ; _TEDispatch
- ENDM
-
- MACRO
- _TECustomHook
- MOVE.W #teCustomHook,-(SP)
- DC.W $A83D ; _TEDispatch
- ENDM
-
- MACRO
- _TENumStyles
- MOVE.W #teNumStyles,-(SP)
- DC.W $A83D ; _TEDispatch
- ENDM
-
- ; new for System 6.0.5/Script Systems 6.0.4 <1.5>
- MACRO
- _TEFeatureFlag
- MOVE.W #teFeatureFlag,-(SP)
- DC.W $A83D ; _TEDispatch
- ENDM
-
- MACRO
- _TEStylPaste
- MOVE.W #teStylPaste,-(SP)
- DC.W $A83D ; _TEDispatch
- ENDM
-
- MACRO
- _TEStylePaste
- MOVE.W #teStylePaste,-(SP)
- DC.W $A83D ; _TEDispatch
- ENDM
-
- MACRO
- _TESetStyle
- MOVE.W #teSetStyle,-(SP)
- DC.W $A83D ; _TEDispatch
- ENDM
-
- MACRO
- _TEReplaceStyle
- MOVE.W #teReplaceStyle,-(SP)
- DC.W $A83D ; _TEDispatch
- ENDM
-
- MACRO
- _TEGetStyle
- MOVE.W #teGetStyle,-(SP)
- DC.W $A83D ; _TEDispatch
- ENDM
-
- MACRO
- _GetStylHandle
- MOVE.W #getStylHandle,-(SP)
- DC.W $A83D ; _TEDispatch
- ENDM
-
- MACRO
- _GetStyleHandle
- MOVE.W #getStyleHandle,-(SP)
- DC.W $A83D ; _TEDispatch
- ENDM
-
- MACRO
- _SetStylHandle
- MOVE.W #setStylHandle,-(SP)
- DC.W $A83D ; _TEDispatch
- ENDM
-
- MACRO
- _SetStyleHandle
- MOVE.W #setStyleHandle,-(SP)
- DC.W $A83D ; _TEDispatch
- ENDM
-
- MACRO
- _GetStylScrap
- MOVE.W #getStylScrap,-(SP)
- DC.W $A83D ; _TEDispatch
- ENDM
-
- MACRO
- _GetStyleScrap
- MOVE.W #getStyleScrap,-(SP)
- DC.W $A83D ; _TEDispatch
- ENDM
-
- MACRO
- _TEStylInsert
- MOVE.W #teStylInsert,-(SP)
- DC.W $A83D ; _TEDispatch
- ENDM
-
- MACRO
- _TEStyleInsert
- MOVE.W #teStyleInsert,-(SP)
- DC.W $A83D ; _TEDispatch
- ENDM
-
- MACRO
- _TEGetPoint
- MOVE.W #teGetPoint,-(SP)
- DC.W $A83D ; _TEDispatch
- ENDM
-
- MACRO
- _TEGetHeight
- MOVE.W #teGetHeight,-(SP)
- DC.W $A83D ; _TEDispatch
- ENDM
-
- MACRO
- _AppendDITL
- MOVE.W #AppendDITL,-(SP)
- MOVE.L SP,A0
- _CommToolboxDispatch
- ADDA.W #$2,SP ; Pop the Selector back off
- ENDM
-
- MACRO
- _CountDITL
- MOVE.W #CountDITL,-(SP)
- MOVE.L SP,A0
- _CommToolboxDispatch
- ADDA.W #$2,SP ; Pop the Selector back off
- ENDM
-
- MACRO
- _ShortenDITL
- MOVE.W #ShortenDITL,-(SP)
- MOVE.L SP,A0
- _CommToolboxDispatch
- ADDA.W #$2,SP ; Pop the Selector back off
- ENDM
-
- ENDIF
-
- ENDIF ; ...already included